package com.knowledge.business.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.knowledge.common.annotation.Excel;
import com.knowledge.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 知识库文档对象 knowledge_document
 *
 * @author zhaoyk
 * @date 2025-09-13
 */
@Data
@TableName(value = "knowledge_document")
@EqualsAndHashCode(callSuper = true)
public class KnowledgeDocument extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**
     * "分类ID"
     */
    @Excel(name = "分类ID")
    private String typeId;

    /**
     * "文件夹ID"
     */
    @Excel(name = "文件夹ID")
    private String folderId;

    /**
     * "文档标题"
     */
    @Excel(name = "文档标题")
    private String documentTitle;
    /**
     * "文档内容"
     */
    @Excel(name = "文档内容")
    private String documentContent;
    /**
     * "文档类型  1 文档 2 图片  3 网站链接 4 视频"
     */
    @Excel(name = "文档类型")
    private String documentType;
    /**
     * "文件类型"
     */
    @Excel(name = "文件类型")
    private String fileType;
    /**
     * "文档大小"
     */
    @Excel(name = "文档大小")
    private Long fileSize;
    /**
     * "文件路径"
     */
    @Excel(name = "文件路径")
    private String fileUrl;
    /**
     * "网站路径"
     */
    @Excel(name = "网站路径")
    private String url;

    /**
     * "分段字符数量"
     */
    @Excel(name = "分段字符数量")
    private Long characterLength;
    /**
     * "分段字符"
     */
    @Excel(name = "分段字符")
    private String zhifu;
    /**
     * "分段数量"
     */
    @Excel(name = "分段数量")
    private Long segmentCount;
    /**
     * "分段类型" 1 长度  2 字符
     */
    @Excel(name = "分段类型")
    private String segmentType;
    /**
     * "文档状态"
     */
    @Excel(name = "文档状态", readConverterExp = "0=正常,1=停用")
    private String status;
    private String delFlag;
    /**
     * "用户Id"
     */
    @Excel(name = "用户Id")
    private String userId;

    // 是否是文件夹  1 是 0 否
    private String isFolder;


    /**
     * "用户名称"
     */
    @Excel(name = "用户名称")
    @TableField(exist = false)
    private String nickName;
    //Init、Processing、Success、Fail,contentnull
    private String parseStatus;  // 解析状态：
    private String parseId;

    // 解析失败原因
    private String parseMsg; // 阿里云解析任务ID

    @TableField(exist = false)
    private String question;
    @TableField(exist = false)
    private long DocumentNum;

    // 根目录的文件和文件夹查询1
    @TableField(exist = false)
    private String isGml;

    // 分类名称
    @TableField(exist = false)
    private String typeName;





}
